home *** CD-ROM | disk | FTP | other *** search
- ║CM:MSD - $┼┴13
- ║LM21:RM70:PP66:PG60
- ║P#104
- ║FT1:,,╨AGE <>
- ║AI-16
- ├╬╘┴├╘ ╔NCREMENT ACTIVE FILE COUNT BY DRIVE
-
- $┼┴13 ┴╬─ .┴ WITH $01 TO GET THE DRIVE NUMBER.
- $┼┴15 ╘RANSFER RESULT TO .╪ AND INCREMENT ╘1,╪ [$49,╪] TO COUNT THE ACTIVE FILES FOR THIS DRIVE.
- $┼┴18 ╥ETURN.
-
-
-
- ├╚╦╫╨╙ ├HECK WRITE PROTECT STATUS
-
- $┼┴19 ╙AVE .╪ (DRIVE SPECIFICATION) IN ─╥╓╬╒═ [$54].
- $┼┴1┬ ╔F ╫╨╙╫,╪ [$4├2─,╪] IS ZERO, THE WRITE PROTECT FLAG HAS NOT CHANGED WHICH INDICATES THE DISK HAS NOT BEEN REMOVED FROM THE DRIVE SO RETURN.
- $┼┴20 ╧THERWISE, THE DISK HAS BEEN REMOVED OR SWAPPED SO JUMP TO ├╠─├╚╬ [$─3┬┴] TO CLOSE ALL FILES FOR THIS DRIVE.
-
-
-
- ╙╘─╔╥ ╙TART LOADING THE DIRECTORY
-
- $┼┴23
-
-
-
- ═╧╓┬╒╞ ╘RANSFER FILE NAME TO LISTING BUFFER
-
- $┼┴─┼
-
-
-
- ╟┼╘─╔╥ ╟ET CHARACTER FOR DIRECTORY LOAD
-
- $┼┴┼├
-
-
-
- ╓┴╠─┴╘ ╓ALIDATE A DISK
-
- $┼┬09 ╩╙╥ ╙╔═╨╥╙ [$├106] TO PARSE THE STRING AND GET THE DRIVE NUMBER.
- $┼┬0├ ╩╙╥ ╔╬╔╘─╥ [$─0╞9] TO INITIALIZE THE DRIVE.
- $┼┬0╞ ╙ET ╫┬┴═ [$┬─] TO $40 TO INDICATE THE ┬┴═ NEEDS TO BE WRITTEN OUT.
- $┼┬13 ╩╙╥ ╬┼╫═┴╨ [$┼├46] TO BUILD A NEW ┬┴═ IN ╥┴═.
- $┼┬16 ╙ET ─┼╠╔╬─ [$┴╞] TO ZERO TO TELL ╙╥├╚╙╘ TO LOOK FOR A NON-DELETED DIRECTORY ENTRY.
- $┼┬1┴ ╩╙╥ ╙╥├╚╙╘ [$├4┬┼] TO FIND THE FIRST DIRECTORY ENTRY.
- $┼┬1─ ╔F AN ENTRY IS FOUND (.┌ = 0), BRANCH TO ╓─25 TO PROCESS IT.
- $┼┬1╞ ╓─10 ╙ET ╙┼├╘╧╥ [$56] TO ZERO.
- $┼┬23 ╙ET ╘╥┴├╦ [$55] TO ─╔╥╘╥╦ [$╞┼6┬].
- $┼┬28 ╩╙╥ ╓═╦┬┴═ [$┼┬67] TO TRACE THROUGH THE DIRECTORY SECTORS AND MARK THOSE IN USE IN THE ┬┴═.
- $┼┬2┬ ╙ET ╫┬┴═ [$┬─] TO ZERO TO INDICATE THE ┬┴═ ON THE DISK MATCHES THE ┬┴═ IN ╥┴═.
- $┼┬2╞ ╩╙╥ ╙├╥┬┴═ [$┼├91] TO WRITE THE ┬┴═ OUT TO DISK.
- ║FP0
- $┼┬32 ╘ERMINATE THE COMMAND WITH A JUMP TO ┼╬─├═─ [$├0├╞].
- $┼┬35 ╓─15 ╔NCREMENT .┘ SO IT POINTS TO THE TRACK LINK FOR THIS DIRECTORY ENTRY.
- $┼┬36 ╟ET THE TRACK LINK FROM (─╔╥┬╒╞),┘ [($69),┘] AND SAVE IT ON THE STACK.
- $┼┬39 ╔NCREMENT .┘ SO IT POINTS TO THE SECTOR LINK, GET THE SECTOR LINK FROM (─╔╥┬╒╞),┘ [($69),┘], AND SAVE IT ON THE STACK.
- $┼┬3─ ╙ET .┘ TO $13 SO IT POINTS TO THE SIDE SECTOR LINK.
- $┼┬3╞ ╧BTAIN THE SIDE SECTOR TRACK LINK FROM (─╔╥┬╒╞),┘ [($69),┘] AND IF THIS VALUE IS ZERO, THE FILE IS NOT A RELATIVE FILE SO BRANCH TO ╓─17.
- $┼┬43 ╙AVE THE SIDE SECTOR TRACK IN ╘╥┴├╦ [$55].
- $┼┬45 ╔NCREMENT .┘ TO POINT TO THE SIDE SECTOR, SECTOR LINK, OBTAIN THE SECTOR FROM (─╔╥┬╒╞),┘ [($69),┘], AND SAVE IT IN ╙┼├╘╧╥ [$56].
- $┼┬44┴ ╩╙╥ ╓═╦┬┴═ [$┼┬67] TO TRACE THROUGH THE SIDE SECTORS AND MARK THE ┬┴═ FOR THOSE SECTORS IN USE.
- $┼┬4─ ╓─17 ╥ESTORE THE ORIGINAL FILE'S SECTOR LINK FROM THE STACK AND SAVE IT IN ╙┼├╘╧╥ [$56].
- $┼┬50 ╥ESTORE THE ORIGINAL FILE'S TRACK LINK FROM THE STACK AND SAVE IT IN ╘╥┴├╦ [$55].
- $┼┬53 ╩╙╥ ╓═╦┬┴═ [$┼┬67] TO TRACE THROUGH THE MAIN FILE AND MARK THE ┬┴═ FOR THOSE SECTORS IN USE.
- $┼┬56 ╓─20 ╩╙╥ ╙╙╥┼ [$├516] TO FIND THE NEXT DIRECTORY ENTRY.
- $┼┬59 ╔F THERE ARE NO MORE ENTRIES (.┌ = 1), BRANCH TO ╓─10 TO FINISH UP.
- $┼┬5┬ ╓─25 ╙ET .┘ TO ZERO SO IT POINTS TO THE FILE TYPE AND STATUS BITS FOR THIS DIRECTORY ENTRY.
- $┼┬5─ ╧BTAIN THE STATUS BITS FROM (─╔╥┬╒╞),┘ [($69),┘] AND BRANCH TO ╓─15 IF BIT 7 IS SET (INDICATES THE FILE WAS CLOSED PROPERLY).
- $┼┬61 ╩╙╥ ─┼╠─╔╥ [$├7┬┬] TO DELETE THIS DIRECTORY ENTRY SINCE IT WAS NOT CLOSED PROPERLY.
- $┼┬64 ╩UMP TO ╓─20 TO GET ANOTHER DIRECTORY ENTRY TO PROCESS.
-
-
-
- ╓═╦┬┴═ ╘RACE FILE BY LINKS AND FLAG BLOCKS IN USE
-
- $┼┬67 ╩╙╥ ╘╙├╚╦ [$─5├0] TO ENSURE THE TRACK AND SECTOR ARE LEGAL.
- $┼┬6┴ ╩╙╥ ╫╒╙┼─ [$┼─01] TO MARK THE TRACK AND SECTOR AS IN USE IN THE ┬┴═.
- $┼┬6─ ╩╙╥ ╧╨╬╔╥─ [$─4─┼] TO OPEN THE INTERNAL READ CHANNEL AND READ THE FIRST BLOCK OF THE FILE.
- $┼┬70 ═╥╦2 ╙ET .┴ TO ZERO AND ╩╙╥ ╙┼╘╨╬╘ [$─533] TO SET THE BUFFER POINTER TO THE TRACK LINK FOR THE FILE.
- $┼┬75 ╩╙╥ ╟┼╘┬┘╘ [$─1╞2] TO GET THE NEXT TRACK AND SAVE IT IN ╘╥┴├╦ [$55].
- $┼┬7┴ ╩╙╥ ╟┼╘┬┘╘ [$─1╞2] TO GET THE NEXT SECTOR LINK AND SAVE IT IN ╙┼├╘╧╥ [$56].
- $┼┬7╞ ╔F ╘╥┴├╦ [$55] IS NOT ZERO, THERE ARE MORE BLOCKS IN THE FILE SO BRANCH TO ═╥╦1.
- $┼┬83 ╩UMP TO ╞╥┼├╚╬ [$─2┼2] TO FREE THE CHANNEL AND RETURN.
- $┼┬86 ═╥╦1 ╩╙╥ ╫╒╙┼─ [$┼─01] TO INDICATE THE BLOCK IS IN USE.
-